import logging

# 创建日志记录器
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)  # 设置日志记录器级别为DEBUG，可记录所有级别日志

# 创建控制台处理器并设置级别
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.INFO)  # 控制台只显示INFO及以上级别日志

# 创建文件处理器并设置级别
file_handler = logging.FileHandler('app.log', encoding='utf-8')  # 日志写入app.log文件，指定编码防乱码
file_handler.setLevel(logging.DEBUG)  # 文件记录所有DEBUG及以上级别日志

# 创建格式化器
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# 为处理器添加格式化器
console_handler.setFormatter(formatter)
file_handler.setFormatter(formatter)

# 将处理器添加到日志记录器
logger.addHandler(console_handler)
logger.addHandler(file_handler)

# 记录不同级别的日志
logger.debug('这是DEBUG级别的日志')
logger.info('这是INFO级别的日志')
logger.warning('这是WARNING级别的日志')
logger.error('这是ERROR级别的日志')
logger.critical('这是CRITICAL级别的日志')